package com.yudean.esb.domain.erp;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 生产项目表对应的实体类
 * </p>
 *
 * @author szq
 * @since 2021-06-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("IDS_PM_PRO_TECH")
@ApiModel(value="IdsPmProTech对象", description="")
public class IdsPmProTech implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "项目ID主键，唯一编码")
    @TableId("TECHID")
    private String techid;

    @ApiModelProperty(value = "项目年度")
    @TableField("TECHYEAH")
    private Integer techyeah;

    @ApiModelProperty(value = "项目名称")
    @TableField("TECHNAME")
    private String techname;

    @ApiModelProperty(value = "申请金额")
    @TableField("TECHBUDGET")
    private BigDecimal techbudget;

    @ApiModelProperty(value = "项目分类父ID名称")
    @TableField("TECHLUCODENAME")
    private String techlucodename;

    @ApiModelProperty(value = "项目分类子ID名称")
    @TableField("TECHLUCODECHILDNAME")
    private String techlucodechildname;

    @ApiModelProperty(value = "项目编号")
    @TableField("TECHPROJECTCODE")
    private String techprojectcode;

    @ApiModelProperty(value = "所属电厂（电厂三字码）")
    @TableField("TECHCOMPANYID")
    private String techcompanyid;

    @ApiModelProperty(value = "集团审批状态")
    @TableField("REPORTSTATUS")
    private String reportstatus;

    @ApiModelProperty(value = "厂内审批状态")
    @TableField("TECHSTATE")
    private String techstate;

    @ApiModelProperty(value = "批复总额")
    @TableField("TECHBUDGETCOMPANYAPPROVAL")
    private BigDecimal techbudgetcompanyapproval;

    @ApiModelProperty(value = "批复技术性金额")
    @TableField("TECHDEVELOPAPPROVAL")
    private BigDecimal techdevelopapproval;

    @ApiModelProperty(value = "批复资本性金额")
    @TableField("TECHCAPITALAPPROVAL")
    private BigDecimal techcapitalapproval;

    @ApiModelProperty(value = "上报编号")
    @TableField("TECHREPORTCODE")
    private String techreportcode;

    @ApiModelProperty(value = "系统集团批复编号")
    @TableField("TECHREPORTPFNO")
    private String techreportpfno;

    @ApiModelProperty(value = "历史批复金额，用于结转")
    @TableField("TECHAPPROVALOLD")
    private BigDecimal techapprovalold;

    @ApiModelProperty(value = "当年可用费用")
    @TableField("TECHBUDGETAPPROVAL_CARRY")
    private BigDecimal techbudgetapprovalCarry;

    @ApiModelProperty(value = "申请当年费用")
    @TableField("THIS_YEAR")
    private BigDecimal thisYear;

    @ApiModelProperty(value = "申请下一年费用")
    @TableField("FIRST_YEAR")
    private BigDecimal firstYear;

    @ApiModelProperty(value = "申请下二年费用")
    @TableField("SECOND_YEAR")
    private BigDecimal secondYear;

    @ApiModelProperty(value = "批复当年费用")
    @TableField("APPROVE_THIS_YEAR")
    private BigDecimal approveThisYear;

    @ApiModelProperty(value = "批复下一年费用")
    @TableField("APPROVE_FIRST_YEAR")
    private BigDecimal approveFirstYear;

    @ApiModelProperty(value = "批复下二年费用")
    @TableField("APPROVE_SECOND_YEAR")
    private BigDecimal approveSecondYear;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "CREATION_DATE",fill = FieldFill.INSERT)
    private Date creationDate;

    @ApiModelProperty(value = "更新时间")
    @TableField(value = "LAST_UPDATE_DATE",fill = FieldFill.INSERT_UPDATE)
    private Date updateDate;
}
